[Merged by Bors] - feat(RingTheory/LocalRing/ResidueField/Basic): add algebra homs between residue fields#39716
[Merged by Bors] - feat(RingTheory/LocalRing/ResidueField/Basic): add algebra homs between residue fields#39716tb65536 wants to merge 3 commits into
Conversation
PR summary 671cfefae1Import changes for modified filesNo significant changes to the import graph Import changes for all files
|
| See `mapAlgEquiv'` for a variant where the base ring `R` is also quotiented. -/ | ||
| noncomputable def mapAlgEquiv (e : S ≃ₐ[R] T) : ResidueField S ≃ₐ[R] ResidueField T where | ||
| __ := | ||
| -- todo: add better conversion between different spellings of the function in an `IsLocalHom` |
There was a problem hiding this comment.
I think now is a good time to try to address this. At the very least maybe we could add:
-- TODO Morally this is just `isLocalHom_equiv`: can we obviate the need for this instance?
instance (R A B : Type*) [CommSemiring R] [Semiring A] [Semiring B] [Algebra R A] [Algebra R B]
(e : A ≃ₐ[R] B) : IsLocalHom e.toAlgHom := by
have : IsLocalHom e.toRingEquiv := inferInstance
exact ⟨this.map_nonunit⟩to the appropriate upstream file to shield future users from this awkwardness?
There was a problem hiding this comment.
Added the instance, thanks!
I did play around a bit with a proper refactor. One the one hand, it seems that we are moving away from having defs take a FunLike argument (since then you actually get a bunch of different defs). But the issue is that if you switch IsLocalHom to take a plain function, then lemmas that require a ring hom won't fire on compositions (since the lemma will want the coercion of f.comp g, but the available instance will be the function composition of the coercions). So not sure what the best long-term plan is here.
|
Thanks! bors d+ |
|
✌️ tb65536 can now approve this pull request. To approve and merge a pull request, simply reply with |
|
bors r+ |
…en residue fields (#39716) This PR adds algebra homs between residue fields. Co-authored-by: tb65536 <thomas.l.browning@gmail.com>
|
Pull request successfully merged into master. Build succeeded:
|
…en residue fields (leanprover-community#39716) This PR adds algebra homs between residue fields. Co-authored-by: tb65536 <thomas.l.browning@gmail.com>
…en residue fields (leanprover-community#39716) This PR adds algebra homs between residue fields. Co-authored-by: tb65536 <thomas.l.browning@gmail.com>
…en residue fields (leanprover-community#39716) This PR adds algebra homs between residue fields. Co-authored-by: tb65536 <thomas.l.browning@gmail.com>
This PR adds algebra homs between residue fields.